<!--
 * @Author: fengxx
 * @Date: 2025-09-05 09:19:27
 * @LastEditors: fengxx
 * @LastEditTime: 2025-10-22 15:28:40
-->
<script setup lang="ts">
import { onActivated, onDeactivated, onMounted, onUnmounted } from 'vue'

defineProps<{
  msg?: string
}>()

onMounted(() => {
  console.log('mounted')
})
onUnmounted(() => {
  console.log('unmouted')
})
// 使用缓存机制时，当前组件被激活时的生命周期
onActivated(() => {
  console.log('active')
})
// 使用缓存机制时，当前组件被失活时的生命周期
onDeactivated(() => {
  console.log('deactive')
})
</script>

<template>
  <div class="greetings">
    <h1 class="green">{{ msg }}</h1>
    <h3>
      You’ve successfully created a project with
      <a href="https://vite.dev/" target="_blank" rel="noopener">Vite</a> +
      <a href="https://vuejs.org/" target="_blank" rel="noopener">Vue 3</a>. What's next?
    </h3>
  </div>
  <div>
    <input type="text" />
  </div>
</template>

<style scoped>
h1 {
  font-weight: 500;
  font-size: 2.6rem;
  position: relative;
  top: -10px;
}

h3 {
  font-size: 1.2rem;
}

.greetings h1,
.greetings h3 {
  text-align: center;
}

@media (min-width: 1024px) {
  .greetings h1,
  .greetings h3 {
    text-align: left;
  }
}
</style>
